package cn.gs.serializable.annotation;

// @author gs
import cn.gs.serializable.serialize.ISerialize;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target({ElementType.METHOD, ElementType.TYPE, ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
public @interface NSerialize {

    Class<? extends ISerialize> value();

    Class<?>[] argClass() default {};

    Class<? extends ISerialize>[] argSerialize() default {};

    String[] argString() default {};

    NStringClassPair[] argMap() default {};
}
